package com.xiaoyy.core.config.util;

import com.github.pagehelper.PageInfo;
import org.springframework.beans.BeanUtils;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

/**
 * @author chenzh
 * @date 2018/5/10 下午10:44
 * @desc Pager转换工具
 */
public class PagerUtil {

    @SuppressWarnings("unchecked")
    public static PageInfo createEmptyPagerInfo(Integer pageNo, Integer pageSize) {
        PageInfo pageInfo = new PageInfo();
        pageInfo.setList(new ArrayList());
        if (pageNo ==null){
            pageInfo.setPageNum(1);
        }else {
            pageInfo.setPageNum(pageNo);
        }
        if (pageNo ==null) {
            pageInfo.setPageSize(20);
        }else {
            pageInfo.setPageSize(pageSize);
        }
        pageInfo.setPages(0);
        pageInfo.setTotal(0);
        pageInfo.setIsFirstPage(true);
        pageInfo.setIsLastPage(true);
        return pageInfo;
    }
    public static <T extends Serializable> PageInfo<T> parsePagerVo(List<T> data,
                                                                   PageInfo<?> pageInfo) {
        PageInfo<T> ret = new PageInfo<>();
        BeanUtils.copyProperties(pageInfo, ret);
        ret.setList(data);
        return ret;
    }

}
